#include "historywig.h"
#include "ui_historywig.h"
#include "mqtt/qmqtt.h"
#include "globalval.h"

#include "QTime"
#include "modbuswig.h"
#include <QRegExp>
#include <QDebug>
#include <QJsonDocument>
#include <QJsonArray>
#include <QJsonObject>

historywig::historywig(QWidget *parent) :
    QDockWidget(parent),
    ui(new Ui::historywig)
{
    ui->setupUi(this);

    QDateTimeEdit *dataTimeEdit = new QDateTimeEdit(this);


}

historywig::~historywig()
{
    delete ui;

}



/*----------------------发布主题处理------------------------*/
//功能：实现数据的下发
//参数：
//      @key：要设置的设备的key值
//      @val：要下发的设备的控制指令，如true\false
//      @topic：要发布的主题
//返回值 无
void historywig::historyDownSlot(QString key,QString val,QString topic ){

    // 创建内层 data 对象
    QJsonObject dataObj;
    dataObj["key"] = key;
    QJsonArray limitArray;
    //limitArray.append(startTime);
    //limitArray.append(endTime);
    dataObj["limit"] = limitArray;

    //创建外层数据
    QJsonObject jsonData;
    jsonData["type"] = "4";//4 历史查询类型
    jsonData["data"] = dataObj;

// 将 JSON 对象转换为 JSON 文档
    QJsonDocument jsonDoc(jsonData);
// 以紧凑格式将 JSON 文档转换为字节数组
    QByteArray payload = jsonDoc.toJson(QJsonDocument::Compact);

    //发布消息
    QMQTT::Message message;
    message.setTopic(topic);
    message.setPayload(payload);

    quint16 messageId = GlobalVal::mqtt->publish(message);
}


void historywig::on_pushButton_clicked()
{
    qDebug()<<"----------------获取日期-------------------";
    QDateTime startDateTime = ui->dateTimeEdit->dateTime();
    QString startdate = startDateTime.toString("yy-MM-dd hh:mm:ss");
    qDebug()<<"starttime:"<<startdate;
    QDateTime endDateTime = ui->dateTimeEdit_2->dateTime();
    QString enddate = endDateTime.toString("yy-MM-dd hh:mm:ss");
    qDebug()<<"endtime:"<<endDateTime;
}
